package co.wangdao.xingshaoye.utils;

import android.util.Log;


public class LogUtil {

    private static final String TAG = "nalan";
    /**
     * isDebug = true 为输出log 奔溃异常直接打印
     * <p/>
     * isDebug = false 为关闭log 异常直接上传服务器
     */
    public static final boolean isDebug = true;

    public static void d(String msg) {
        if (isDebug)
            d(TAG, msg);
    }

    public static void d(String TAG, String msg) {
        if (isDebug)
            show(TAG, msg);
    }

    public static void i(String msg) {
        if (isDebug)
            i(TAG, msg);
    }

    public static void i(String TAG, String msg) {
        if (isDebug)
            Log.i(TAG, msg);
    }

    public static void v(String msg) {
        if (isDebug)
            v(TAG, msg);
    }

    public static void v(String TAG, String msg) {
        if (isDebug)
            Log.v(TAG, msg);
    }

    public static void e(String msg) {
        if (isDebug)
            e(TAG, msg);
    }

    public static void e(String TAG, String msg) {
        if (isDebug)
            Log.e(TAG, msg);
    }

    public static void fromJson(Object obj) {
        if (isDebug)
            fromJson(TAG, obj);
    }

    public static void fromJson(String TAG, Object obj) {
    //    if (isDebug)
     //       d(TAG, JsonUtil.toJson(obj));
    }

    /**
     * 分隔打印数据，避免出现超4K时部分log被截取导致不显示
     */
    public static void show(String TAG, String str) {
        String msg = str.trim();
        int index = 0;
        int maxLength = 4000;
        String sub;
        while (index < msg.length()) {
            // java的字符不允许指定超过总的长度end
            if (msg.length() <= index + maxLength) {
                sub = msg.substring(index);
            } else {
                if (index > maxLength) {
                    sub = msg.substring(index, index + maxLength);
                } else {
                    sub = msg.substring(index, maxLength);
                }
            }
            index += maxLength;
            Log.d(TAG, sub.trim());
        }
    }
}
